#include <iostream.h> // Zadanie 6.3
#include <iomanip.h>
#include <conio.h>

const int rozmiar = 10;
int macierz[rozmiar][rozmiar];

class matrix // definicja klasy matrix
{
public:
czytaj_dane(int macierz[rozmiar][rozmiar], int rozmiar);
  // prototyp funkcji czytaj_dane()
przetworz_dane(int macierz[rozmiar][rozmiar], int rozmiar);
  // prototyp funkcji przetworz_dane()
wyswietl_wynik(int macierz[rozmiar][rozmiar], int rozmiar);
  // prototyp funkcji wyswietl_wynik()
};

matrix::czytaj_dane(int tablica[rozmiar][rozmiar], int rozmiar)
{
int i, j;
randomize();
for (i = 0; i < rozmiar; i++)
{
for (j = 0; j < rozmiar; j++)
{
if (i == j)
tablica[i][j] = random(10);
else
tablica[i][j] = 0;
}
}
}

matrix::przetworz_dane(int tablica[rozmiar][rozmiar], int rozmiar)
{
int i, suma = 0;
for (i = 0; i < rozmiar; i++)
{
suma = suma+tablica[i][i];
}
cout << "Suma elementow na przekatnej wynosi " << suma << "." << endl;
}

matrix::wyswietl_wynik(int tablica[rozmiar][rozmiar], int rozmiar)
{
int i, j;
cout << endl;
cout << "Zawartosc tablicy:" << endl;
cout << endl;
for (i = 0; i < rozmiar; i++)
{
for (j = 0; j < rozmiar; j++)
{
cout << tablica[i][j] << " ";
}
cout << endl;
}
}


main()
{
int tablica[rozmiar][rozmiar];
matrix matrix1; // utworzenie obiektu matrix1

matrix1.czytaj_dane(tablica, rozmiar);
matrix1.przetworz_dane(tablica, rozmiar);
matrix1.wyswietl_wynik(tablica, rozmiar);

getch(); // czeka na nacisniecie dowolnego klawisza
}
